package 集合进阶.双列集合.Map集合;

import java.util.HashMap;
import java.util.Iterator;
import java.util.Map;
import java.util.Set;

public class Map集合的遍历1 {
    public static void main(String[] args) {
        //map集合的第一种遍历方式

        //1.创建一个map集合
        Map<String,String> m=new HashMap<>();
        //2.添加元素
        m.put("杨过","小龙女");
        m.put("郭靖","黄蓉");
        m.put("孙策","大桥");

        //3.通过键找值keySet获取所有键的集合
        Set<String> keys = m.keySet();

        //4.遍历单列集合keys
        for (String key : keys) {
            //利用map集合中的键获取对应的值
            System.out.println(m.get(key));
        }

        //迭代器遍历
        System.out.println("--------------------迭代器-----------------------");
        //创建一个迭代器对象
        Iterator<String> it = keys.iterator();
        //判断指针对应的元素是否存在
        while (it.hasNext()){
            //获取元素且移动指针
            String str = it.next();
            //通过get获取键所对应的值
            System.out.println(m.get(str));
        }
        //通过Lambda表达式遍历集合
        System.out.println("-----------------------Lambda--------------------");
        keys.forEach(s -> System.out.println(m.get(s)));

    }
}
